Mobile devices are becoming popular and allow users to access countless information and entertainment easily. Given the portability, and therefore small sizes, of mobile devices, users may find it difficult to quickly and accurately type words and phrases using the interfaces in mobile devices. To assist users with typing, many mobile devices implement predictive text entry techniques, such as auto-correct. However, to accurately predict the words users intend to type, a large amount of data and computation are necessary. Since mobile devices emphasize portability and low power consumption, it may be prohibitive for mobile devices to rely on a large amount of data and computation necessary for accurate prediction. While it may be possible for mobile devices to receive predictive data from remote servers, typical network connection speed may be insufficient to sustain the bandwidth required during normal typing. The insufficient bandwidth may lead to delay in displaying predictive text to the users, which degrades user experience. Therefore, improvement in predictive text entry techniques may be desirable to assist users to enter text quickly and accurately.